package com.company.app.bo;

import java.util.List;

import com.company.app.entities.Customer;

/**
 * The Interface CustomerBO.
 */
public interface CustomerBO {
	
	/**
	 * Gets the customer by id.
	 *
	 * @return the customer by id
	 */
	public Customer getCustomerById(Long id);
	
	/**
	 * Search customer by filter.
	 *
	 * @return the customer
	 */
	public List<Customer> searchCustomers(List<Customer> customer);
	
	/**
	 * Execute customer bussiness logic.
	 *
	 * @return true, if successful
	 */
	public boolean executeCustomerBussinessLogic();
	
	/**
	 * Creates the customer.
	 *
	 * @param customer the customer
	 * @return Customer, the new customer
	 */
	public Customer createCustomer(Customer customer);
	
	/**
	 * Update customer.
	 *
	 * @param customer the customer
	 * @return true, if successful
	 */
	public boolean updateCustomer(Customer customer);
	
	/**
	 * Delete customer.
	 *
	 * @param customer the customer
	 * @return true, if successful
	 */
	public boolean deleteCustomer( Customer customer);


}
